#ifndef __LCD_CTRL_H_
#define __LCD_CTRL_H_


#include "configs.h"
#include "utils.h"


void lcd_ctrl_init(void);

void lcd_ctrl_deinit(void);

k_tick_t update_elec_time_begin_fl(k_tick_t * t);

k_tick_t update_elec_time_end_fl(k_tick_t * t);

k_tick_t update_elec_time_begin(k_tick_t * t);

k_tick_t update_elec_time_end(k_tick_t * t);

void add_elec_value(int elec);

void lcd_ctrl_fill_framebuffer(uint32_t frameBuffer[APP_IMG_HEIGHT][APP_IMG_WIDTH]);

int get_current_elec_value(void);

void freeze_lcd(int freeze);

void force_refresh_lcd(void);

int is_force_refresh_lcd(void);

void clear_force_refresh_lcd(void);


typedef enum elec_mode_t
{
    ELEC_MODE_SECOND,
    ELEC_MODE_DAY
} elec_mode_t;

void set_elec_mode(elec_mode_t mode);

elec_mode_t get_elec_mode(void);


#endif
